﻿namespace TestTool.Proxies.Onvif
{
    using System;
    using System.CodeDom.Compiler;
    using System.ComponentModel;
    using System.Diagnostics;
    using System.Xml;
    using System.Xml.Serialization;

    [Serializable, DebuggerStepThrough, GeneratedCode("svcutil", "3.0.4506.2152"), DesignerCategory("code"), XmlType(TypeName="Capabilities", Namespace="http://www.onvif.org/ver10/deviceIO/wsdl")]
    public class IOServiceCapabilities
    {
        private XmlAttribute[] anyAttrField;
        private XmlElement[] anyField;
        private int audioOutputsField = 0;
        private int audioSourcesField = 0;
        private int digitalInputsField = 0;
        private int relayOutputsField = 0;
        private int serialPortsField = 0;
        private int videoOutputsField = 0;
        private int videoSourcesField = 0;

        [XmlAnyElement(Order=0)]
        public XmlElement[] Any
        {
            get
            {
                return this.anyField;
            }
            set
            {
                this.anyField = value;
            }
        }

        [XmlAnyAttribute]
        public XmlAttribute[] AnyAttr
        {
            get
            {
                return this.anyAttrField;
            }
            set
            {
                this.anyAttrField = value;
            }
        }

        [DefaultValue(0), XmlAttribute]
        public int AudioOutputs
        {
            get
            {
                return this.audioOutputsField;
            }
            set
            {
                this.audioOutputsField = value;
            }
        }

        [XmlAttribute, DefaultValue(0)]
        public int AudioSources
        {
            get
            {
                return this.audioSourcesField;
            }
            set
            {
                this.audioSourcesField = value;
            }
        }

        [XmlAttribute, DefaultValue(0)]
        public int DigitalInputs
        {
            get
            {
                return this.digitalInputsField;
            }
            set
            {
                this.digitalInputsField = value;
            }
        }

        [DefaultValue(0), XmlAttribute]
        public int RelayOutputs
        {
            get
            {
                return this.relayOutputsField;
            }
            set
            {
                this.relayOutputsField = value;
            }
        }

        [DefaultValue(0), XmlAttribute]
        public int SerialPorts
        {
            get
            {
                return this.serialPortsField;
            }
            set
            {
                this.serialPortsField = value;
            }
        }

        [XmlAttribute, DefaultValue(0)]
        public int VideoOutputs
        {
            get
            {
                return this.videoOutputsField;
            }
            set
            {
                this.videoOutputsField = value;
            }
        }

        [XmlAttribute, DefaultValue(0)]
        public int VideoSources
        {
            get
            {
                return this.videoSourcesField;
            }
            set
            {
                this.videoSourcesField = value;
            }
        }
    }
}

